package meituan1.problem5;

import java.util.Arrays;
import java.util.Scanner;

/**
 *
 */
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int treeNum = sc.nextInt();
        sc.nextLine();
        int[] treeRecord = new int[treeNum];
        int temp1 = treeNum;
        int count = 0;
        while(temp1 -- > 0){
            treeRecord[count] = sc.nextInt();
            count++;
        }
        // 分奇偶做前序和和后序和
        int[] sumRecord1 = new int[treeNum - treeNum / 2]; // 前序, 奇数
        int[] sumRecord2 = new int[treeNum - treeNum / 2];
        for(int i = 0; i < treeNum; i++){
            if(i % 2 == 0){
                sumRecord1[i / 2] = (i == 0? treeRecord[i]: sumRecord1[i/2 - 1] + treeRecord[i]);
            }else {
                sumRecord2[i / 2] = (i == 1? treeRecord[i]: sumRecord2[i/2 - 1] + treeRecord[i]);
            }
        }
        for(int i = 0; i < treeNum; i++){
             if(i % 2 == 0){
                 int count1 = 0;
                 int count2 = 0;
                 count1 += (i == 0? 0: sumRecord1[i / 2 - 1]);
                 count2 += (i == 0? 0: sumRecord2[i / 2 - 1]);
                 count1 += (sumRecord2[sumRecord2.length - 1] - (i == 0? 0: sumRecord2[i / 2 - 1]));
                 count2 += (sumRecord1[sumRecord2.length - 1] - (i == 0? 0: sumRecord2[i / 2 - 1]));
                 if(count1 == count2)
                     System.out.print(i + " ");
             }else{
                 int count1 = 0;
                 int count2 = 0;
                 count1 += (sumRecord1[i / 2]);
                 count2 += (i == 1? 0: sumRecord2[i / 2 - 1]);
                 count1 += (sumRecord2[sumRecord2.length - 1] - (sumRecord2[i / 2]));
                 count2 += (sumRecord1[sumRecord2.length - 1] - (i == 1? 0: sumRecord2[i / 2 - 1]));
                 if(count1 == count2)
                     System.out.print(i + " ");
             }
        }
    }
}
